# 反转单词
# 显示声明变量的类型, 写代码是对应的函数操作就会提示
def reverse_words(s: str):
    """
    反转单词顺序
    :param s: 要反转的句子
    :return: 返回反转过后的句子
    """
    # 根据空格对句子进行分割, 得到所有的单词
    #  split 不传参数, 默认就会根据 \n, \t, \r, \f , 空格, 等进行分割, 不管中间有多少空格
    #  都会分割
    words = s.split()
    # 对得到的单词进行逆序
    words.reverse()
    # 对逆序过后的单词之间用 空格进行分割
    return " ".join(words)


# 旋转字符串
def rotate_string(s, goal):

    # 避免　s = "a", goal = "aa" 的情况
    if len(s) > len(goal):
        return False
    # in 还可以用来 判断一个字符串是不是另一个字符串的子串
    return goal in (s + s)


# 2255. 统计是给定字符串前缀的字符串数目
def count_prefixes(words, s: str):
    count = 0
    for word in words:
        if s.startswith(word):
            count += 1
    return count
